package com.lyt.mall.search.vo;

import com.lyt.common.dto.es.SkuESModel;
import lombok.Data;

import java.util.List;

/**
 * @author: LiuYutong
 * 封装检索后的响应信息
 */
@Data
public class SearchResult {

    private List<SkuESModel> products;    //查询到的所有满足条件的商品信息
    //分页信息
    private Integer pageNum;       //当前页
    private Long total;            //总记录数
    private Integer totalPages;    //总页数
    private List<Integer> navs;    //需要显示的分页页码

    //当前查询的所有的商品涉及到的所有品牌信息
    private List<BrandVO> brands;
    //当前查询的所有的商品涉及到的所有属性信息
    private List<AttrVO> attrs;
    //当前查询的所有的商品涉及到的所有类别信息
    private List<CatalogVO> catalogs;

    /**
     * 品牌相关信息
     */
    @Data
    public static class BrandVO{
        private Long brandId;       //品牌编号
        private String brandName;   //品牌名称
        private String brandImg;    //品牌图片
    }

    /**
     * 属性相关信息
     */
    @Data
    public static class AttrVO{
        private Long attrId;            //属性编号
        private String attrName;        //属性名称
        private List<String> attrValue; //属性值
    }

    /**
     * 类别相关信息
     */
    @Data
    public static class CatalogVO{
        private Long catalogId;      //类别编号
        private String catalogName;  //类别名称
    }
}
